import 'package:flutter/material.dart';

class EgIcon extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return new MaterialApp(
      title: "Icon 组件示例",
      home: new IconDemo(),
    );
  }
}

class IconDemo extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      appBar: new AppBar(
        title: new Text("Icon 组件示例"),
      ),
      body: new Icon(
        Icons.phone,
        color: Colors.green[50],
        size: 80,
      ),
    );
  }
}

/**
 * Icon 组件为展示图标的组件，该组件不可交互，只是展示  要想交互需要使用IconButton组件
 *
 * IconButton ：带交互的Icon组件
 * Icons ：框架自带的Icon集合
 * IconTheme ：Icon 主题
 * ImageIcon : 通过AssetImages 或者其他图片显示Icon
 **/

/// 如果IconButton的onPressed 回调函数为 null,那么这个按钮就出于禁用状态，并且不可按下。
class IconButtonDemo extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return new IconButton(
      icon: Icon(
        Icons.volume_up,
        size: 50,
      ),
      tooltip: "按下操作",
      onPressed: () {
        print("按钮被按下了");
      },
    );
  }
}

/**
 * 凸起按钮  可以响应按下事件的按钮，自带触摸效果
 * 常用属性：
 * color ：组件的颜色
 * disableColor: 组件禁用的颜色
 * onPressed: 按钮被按下的回调
 * child: 文本
 * enable : 是否可用
 */
///凸起按钮
class RaisedButtonDemo extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      appBar: new AppBar(
        title: new Text("凸起按钮 RaisedButton"),
      ),
      body: new Center(
        child: new RaisedButton(
          onPressed: () {
            print("按钮被按下了");
          },
          child: new Text("按下会有输出"),
        ),
      ),
    );
  }
}
